package com.site.war.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.site.common.annotation.Excel;
import com.site.common.core.domain.BaseEntity;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

/**
 * 监控视频地址对象 site_video
 *
 * @author site
 * @date 2023-10-10
 */
public class SiteVideo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 主键id */
    private Long id;

    /** 工地编号 */
    @Excel(name = "工地编号")
    private String siteNumber;

    /** 工地名称 */
    @Excel(name = "工地名称")
    private String siteName;

    /** 设备编号（和设备类型对应） */
    @Excel(name = "设备编号", readConverterExp = "和=设备类型对应")
    private String towerCraneNumber;

    /** 工地名称 */
    @Excel(name = "视频名称")
    private String videoName;

    /** 实时视频地址 */
    @Excel(name = "实时视频地址")
    private String realtimeVideoUrl;

    /** 回放视频地址 */
    @Excel(name = "回放视频地址")
    private String playbackVideoUrl;

    /** 设备类型（1 塔吊 2 吊篮 3 升降机） */
    @Excel(name = "设备类型", readConverterExp = "1=,塔=吊,2=,吊=篮,3=,升=降机")
    private Long deviceType;

    /** 推送时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "推送时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date pushTime;

    /** 视频播放 token */
    @Excel(name = "视频播放 token")
    private String token;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setSiteNumber(String siteNumber)
    {
        this.siteNumber = siteNumber;
    }

    public String getSiteNumber()
    {
        return siteNumber;
    }
    public void setSiteName(String siteName)
    {
        this.siteName = siteName;
    }

    public String getSiteName()
    {
        return siteName;
    }
    public void setTowerCraneNumber(String towerCraneNumber)
    {
        this.towerCraneNumber = towerCraneNumber;
    }

    public String getTowerCraneNumber()
    {
        return towerCraneNumber;
    }
    public void setRealtimeVideoUrl(String realtimeVideoUrl)
    {
        this.realtimeVideoUrl = realtimeVideoUrl;
    }

    public String getRealtimeVideoUrl()
    {
        return realtimeVideoUrl;
    }
    public void setPlaybackVideoUrl(String playbackVideoUrl)
    {
        this.playbackVideoUrl = playbackVideoUrl;
    }

    public String getPlaybackVideoUrl()
    {
        return playbackVideoUrl;
    }
    public void setDeviceType(Long deviceType)
    {
        this.deviceType = deviceType;
    }

    public Long getDeviceType()
    {
        return deviceType;
    }
    public void setPushTime(Date pushTime)
    {
        this.pushTime = pushTime;
    }

    public Date getPushTime()
    {
        return pushTime;
    }
    public void setToken(String token)
    {
        this.token = token;
    }

    public String getToken()
    {
        return token;
    }

    public String getVideoName() {
        return videoName;
    }

    public void setVideoName(String videoName) {
        this.videoName = videoName;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("siteNumber", getSiteNumber())
            .append("siteName", getSiteName())
            .append("towerCraneNumber", getTowerCraneNumber())
            .append("videoName", getVideoName())
            .append("realtimeVideoUrl", getRealtimeVideoUrl())
            .append("playbackVideoUrl", getPlaybackVideoUrl())
            .append("deviceType", getDeviceType())
            .append("pushTime", getPushTime())
            .append("token", getToken())
            .append("remark", getRemark())
            .append("createTime", getCreateTime())
            .toString();
    }
}
